#pragma once
#include <cstdlib>
#include <fmt/core.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

#define ERR_EXIT(m)         \
    do                      \
    {                       \
        perror(m);          \
        exit(EXIT_FAILURE); \
    } while (0)

template <typename... Args>
void println(fmt::string_view format_str, Args &&...args) {
    fmt::print(format_str, std::forward<Args>(args)...);
    fmt::print("\n");
}
